package com.betterjr.modules.risk.loanmanage.dubbo;

import java.util.Map;

import javax.inject.Inject;

import com.alibaba.dubbo.config.annotation.Service;
import com.betterjr.common.data.WorkUserInfo;
import com.betterjr.common.utils.BTAssert;
import com.betterjr.common.utils.UserUtils;
import com.betterjr.common.web.AjaxObject;
import com.betterjr.modules.risk.loanmanage.IPartnershipService;
import com.betterjr.modules.risk.loanmanage.service.PartnershipService;

/** 
 * @ClassName: FlowFacetsService 
 * @Description: 对外提供的流程服务
 * @author licz
 * @date 2017年11月6日 下午3:17:49 
 *  
 */
@Service(interfaceClass = IPartnershipService.class)
public class PartnershipDubboService implements IPartnershipService {

    @Inject
    private PartnershipService partnershipService;

    /** 
     * <p>Description: </p> 
     * @see com.betterjr.modules.risk.loanmanage.IPartnershipService#savePartnership(java.util.Map) 
     * @author licz
     * @date 2018年7月2日 上午9:25:24 
     */
    @Override
    public String savePartnership(final Map<String, Object> anMap) {
        final WorkUserInfo operator = UserUtils.getUser();
        BTAssert.notNull(operator, "不能获取当前登陆用户！");

        /* 第一版本不做线上电子协议  TODO  
         *  1.如果和协议方式 是 ：线上电子协议 ， 根据模板id （N_COOPERATION_AGREEMENT_TEMPLATE_ID ）        自动生成电子协议记录，---cooperationAgreementTemplateId
        2.并将电子协议的主键ID 存储N_COOPERATION_AGREEMENT_ID协议的明细ID----cooperationAgreementId
        */

        partnershipService.savePartnership(anMap);
        return AjaxObject.newOk("成功").toJson();
    }

    /** 
     * <p>Description: </p> 
     * @see com.betterjr.modules.risk.loanmanage.IPartnershipService#listPartnershipByPage(java.util.Map, int, int, java.lang.String) 
     * @author licz
     * @date 2018年7月2日 上午9:25:24 
     */
    @Override
    public String listPartnershipByPage(final Map<String, Object> anMap, final int anPageNum, final int anPageSize,
            final String anFlag) {
        final WorkUserInfo operator = UserUtils.getUser();
        BTAssert.notNull(operator, "不能获取当前登陆用户！");

        return AjaxObject.newOkWithPage("成功", partnershipService.listPartnership(anMap, anPageNum, anPageSize))
                .toJson();
    }

    /** 
     * <p>Description: </p> 
     * @see com.betterjr.modules.risk.loanmanage.IPartnershipService#listPartnership(java.util.Map) 
     * @author licz
     * @date 2018年7月5日 上午9:22:11 
     */
    @Override
    public String listPartnership(final Map<String, Object> anMap) {
        return AjaxObject.newOk("成功", partnershipService.listPartnership(anMap)).toJson();
    }

}
